// useFetch Hook

import { useEffect, useState } from "react";

function useFetch(url) {
  // data，用于存储获取到的数据
  const [data, setData] = useState(null);
  // loading，用于表示是否正在加载数据
  const [loading, setLoading] = useState(false);

  useEffect(() => {
    setLoading(true);
    fetch(url)
      .then((res) => res.json())
      .then(setData)
      .finally(() => setLoading(false));
  }, [url]);

  // 返回数据和加载状态
  return { data, loading };
}

const { data, loading } = useFetch('api/users');
